package com.wms.pojo;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.time.LocalDateTime;

/**
 * 物流公司实体类
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
@TableName("tb_logistics_company") // 指定数据库表名
public class LogisticsCompany {

    /**
     * 主键ID
     */
    @TableId(value = "id", type = IdType.AUTO) // 根据主键策略调整，如果数据库自增用 AUTO
    private Integer id;

    /**
     * 物流公司名字
     */
    @TableField("company_name")
    private String companyName;

    /**
     * 物流运输最低费用（单位：分，根据业务确认）
     */
    @TableField("min_price")
    private Integer minPrice;

    /**
     * 联系人
     */
    @TableField("link_user")
    private String linkUser;

    /**
     * 联系电话
     */
    @TableField("linke_phone")
    private String linkePhone;

    /**
     * 排序
     */
    @TableField("sort")
    private Integer sort;

    /**
     * SaaS标识
     */
    @TableField("saas_id")
    private String saasId;

    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH-mm-ss")
    @TableField("create_time")
    private LocalDateTime createTime;

    /**
     * 创建人账号
     */
    @TableField("create_by")
    private String createBy;

    /**
     * 修改时间
     */
    @TableField("update_time")
    private LocalDateTime updateTime;

    /**
     * 修改人账号
     */
    @TableField("update_by")
    private String updateBy;

    /**
     * 是否删除: 1 未删除, 2 已删除
     * 使用 @TableLogic 注解实现逻辑删除（可选）
     */
    @TableField("is_del")
    private Integer isDel;
}